function AStarTest() {
	
	var assert = new Assert();
	
	this.testConstructor = function() {
		aStar = new AStar();
	};
	
	this.testGetPath = function() {
		aStar = new AStar();
		
		impassablePoints = [[3,1],[3,2],[3,3]];
		
		area = new Area(6,5, null, impassablePoints);
		distanceCalculator = new DistanceCalculator();
		
		path = aStar.getPath(1, 3, 5, 3, area, distanceCalculator, 3);
		
		s = area.toString(path,"<br>");
		debugConsole.toConsole("<br> >>>>  testGetPath debug:");
		debugConsole.toConsole("");
		debugConsole.toConsole(s);
		debugConsole.toConsole("__________________________________");		
		
		assert.assertEquals(5,path.nodes.length,"Path should have 5 nodes, has "+path.nodes.length);
	};
	
	this.testGetPath2 = function() {
		aStar = new AStar();
		
		impassablePoints = [
		                    [3,2] , [4,2],
		                    [4,3] , [5,3],
		                    [5,4] , [6,4],
		                    [6,5] ,
		                    [1,6] , [5,6] , [6,6],
		                    [1,7] , [2,7] , [4,7] , [5,7],
		                    [2,8] , [3,8] , [4,8]
		                    ];
		
		area = new Area(10,10, null, impassablePoints);
		distanceCalculator = new DistanceCalculator();
		
		path = aStar.getPath(1, 2, 7, 9, area, distanceCalculator, 3);
		
		s = area.toString(path,"<br>");
		debugConsole.toConsole("<br> >>>>  testGetPath2 debug:");
		debugConsole.toConsole("");
		debugConsole.toConsole(s);
		debugConsole.toConsole("__________________________________");		
		
		assert.assertEquals(12,path.nodes.length,"Path should have 12 nodes, has "+path.nodes.length);
	};
	
	this.testGetPath2 = function() {
		aStar = new AStar();
		
		impassablePoints = [
		                    [3,2] , [4,2],
		                    [4,3] , [5,3],
		                    [5,4] , [6,4],
		                    [6,5] ,
		                    [1,6] , [5,6] , [6,6],
		                    [1,7] , [2,7] , [4,7] , [5,7],
		                    [2,8] , [3,8] , [4,8]
		                    ];
		
		area = new Area(10,10, null, impassablePoints);
		distanceCalculator = new DistanceCalculator();
		
		path = aStar.getPath(1, 2, 7, 9, area, distanceCalculator, 3);
		
		s = area.toString(path,"<br>");
		debugConsole.toConsole("<br> >>>>  testGetPath2 debug:");
		debugConsole.toConsole("");
		debugConsole.toConsole(s);
		debugConsole.toConsole("__________________________________");		
		
		assert.assertEquals(12,path.nodes.length,"Path should have 12 nodes, has "+path.nodes.length);
	};
	
	this.testSomewhatPassable = function() {
		aStar = new AStar();
		
		impassablePoints = [
		                    [4, 0],
		                    [4, 1],
		                    [4, 3],
		                    [4, 4],
		                    [4, 6],
		                    [4, 7]
		                    ];
		
		somewhatPassablePoints = [
		                    [4, 2]
		                    ];
		
		area = new Area(8 ,8 , somewhatPassablePoints, impassablePoints);
		distanceCalculator = new DistanceCalculator();
		
		s = area.toString(null,"<br>");
		debugConsole.toConsole("<br> >>>>  testSomewhatPassable empty area:");
		debugConsole.toConsole("");
		debugConsole.toConsole(s);
		debugConsole.toConsole("__________________________________");
		
		path1 = aStar.getPath(3, 2, 5, 2, area, distanceCalculator, 3);		
		s = area.toString(path1,"<br>");
		debugConsole.toConsole("<br> >>>>  testSomewhatPassable path through somewhat passable:");
		debugConsole.toConsole("");
		debugConsole.toConsole(s);
		debugConsole.toConsole("__________________________________");
		assert.assertEquals(3,path1.nodes.length,"Path should have 3 nodes, has "+path.nodes.length);
		
		path2 = aStar.getPath(3, 3, 5, 3, area, distanceCalculator, 3);		
		s = area.toString(path2,"<br>");
		debugConsole.toConsole("<br> >>>>  testSomewhatPassable path through passable:");
		debugConsole.toConsole("");
		debugConsole.toConsole(s);
		debugConsole.toConsole("__________________________________");
		assert.assertEquals(5,path2.nodes.length,"Path should have 5 nodes, has "+path.nodes.length);
	};
	
};